﻿//AjaxPagerX 分页控件跳转用于跳转 传入form名称和页码
function AjaxToPage(formname, pageindex)
{

    var _pageIndex = '#' + formname + ' #pageIndex';
    $(_pageIndex).val(pageindex);

    if ($(_pageIndex).length == 0)
    {
        for (var i = 0; i < document.getElementsByName("pageIndex").length; i++)
        {
            document.getElementsByName("pageIndex")[i].value = pageindex;
        }
    }

    $('#' + formname).submit();
    return false;
}

//AjaxPagerX 分页控件跳转用于刷新当前页      
function AjaxToRefresh(formname)
{
    var _pageIndex = '#' + formname + ' #pageIndex';
    var _HpageIndex = '#' + formname + ' #HpageIndex';
    $(_pageIndex).val($(_HpageIndex).val());
    $('#' + formname).submit();
    return false;
}

//AjaxPagerX 分页控件用于改变form里面隐藏域的值，如果没有将创建一个
function UpdateHidden(formname, hiddenName, value)
{
    var temp_hiddenName = '#' + formname + ' #' + hiddenName;

    if ($(temp_hiddenName).length > 0 || (isie6() && ($("#" + formname + " input[name='" + hiddenName + "']").length > 0)))
    {
        $(temp_hiddenName).val(value);
    }
    else
    {
        var str = '<input  type=\"hidden\" id=\"' + hiddenName + '\" name=\"' + hiddenName + '\" value=\"' + value + '\"  /> ';
        $('#' + formname).append(str);
    }
}


function documentCheck()
{
    ///<summary>
    /// 用于在通过AJAX的形式取得新的页面内容之后,重新刷新页面信息以便实现验证
    ///</summary>

    $.validator.unobtrusive.parse(document);
}



//数组删除元素 传入数组下标
Array.prototype.remove = function (dx)
{
    if (isNaN(dx) || dx > this.length) { return false; }
    this.splice(dx, 1);
    return this;
}


//提示是否提交指定的链接
//传入控件对象obj
$.confimSubmit = function (obj, fun)
{
    try
    {
        var atr = $(obj).attr("alt");
        var href = $(obj).attr("href");

        $.confim(atr, function ()
        {
            $.AjaxServer(href, null, function (data)
            {
                if (data.Status == 1)
                {
                    if (fun == null)
                    {
                        $.tips("操作成功");
                    } else
                    {
                        fun(data);
                    }

                } else
                {
                    $.tips(data.ErrorText);
                }
            });
        });
    }
    catch (e)
    {

    }
    return false;
}

//提示是否跳转到指定的页面
//传入控件对象obj
$.confimUrl = function (obj)
{
    try
    {
        var atr = $(obj).attr("alt");
        var href = $(obj).attr("href");

        $.confim(atr, function ()
        {
            window.location = href;
        });
    }
    catch (e)
    {

    }
    return false;
}

//在弹窗中显示内容
//传入控件对象obj
$.DialogAjax = function (obj, fun)
{
    var funobj = true;
    if (funobj != null)
    {
        funobj = fun;
    }

    try
    {
        var atr = $(obj).attr("alt");
        var href = $(obj).attr("href");

        $.AjaxServer(href, null, function (data)
        {

            var id = newGuid();
            art.dialog({
                title: atr,
                id: id,
                fixed: false,
                lock: false,
                content: "<span style='line-height:22px;'>" + _SetDialogContent(data, id) + "</span>",
                ok: false,
                close: funobj
            });

            documentCheck();
        });
    }
    catch (e)
    {

    }
    return false;
}

$.ShowDialog = function (content, title)
{
    var id = newGuid();
    return art.dialog({
        title: title,
        id: id,
        fixed: true,
        lock: true,
        content: _SetDialogContent(content, id),
        resize: false
    });
}

//webFileUrl 请求地址
//jsonArgs参数 {}
//callBackFunc 回调 
//是否异步async 默认true
//是否开启遮罩  默认true
$.AjaxServer = function (webFileUrl, jsonArgs, callBackFunc, async, isTip)
{
    if (isTip == null)
    {
        isTip = true;
    }

    try
    {
        $.ajax({
            url: webFileUrl,
            data: jsonArgs,
            type: 'Post',
            async: async == null ? true : async,
            cache: false,
            success: function (data, textStatus, rqinfo)
            {
                if (rqinfo.status == 208)
                {
                    $.alert("未找到页面");
                }
                else if (rqinfo.status == 207)
                {
                    if (data != null && data.ErrorText != null)
                    {
                        $.alert(data.ErrorText);
                    } else
                    {
                        $.alert("未定义错误原因");
                    }
                }
                else if (callBackFunc)
                {
                    return callBackFunc(data, textStatus, rqinfo);
                }
            },
            error: function ()
            {
                $.alert('提交错误');
            },
            complete: function (XHRequest, T)
            {
                XHRequest = null
            },
            isTip: isTip
        });

    }
    catch (e)
    {
        alert(e)
    }

}


//隐藏文本框错误提示
$(function ()
{
    $(".field-validation-error").each(function ()
    {

        $(this).hide();

    });
})


//用于BooleanType控件切换是否
function BooleanTypeChange(obj)
{
    $(obj).val($(obj).is(':checked') ? "1" : "0");
}

//判断浏览器是否是ie6
function isie6()
{
    if ($.browser.msie)
    {
        if ($.browser.version == "6.0") return true;
    }
    return false;
}

/****************全局遮罩******************/
$(document).ajaxSend(ajaxTips).ajaxComplete(unTips);

function ajaxTips(event, xhr, settings)
{
    if (settings.isTip!=null && settings.isTip == false)
    {
        return;
    }

    settings._ajaxartDialogClose = false;
    settings._ajaxartDialog = artDialog({
        title: false,
        cancel: false,
        fixed: true,
        lock: true,
        height: '5px',
        width: '5px',
        padding: '0px 0px',
        esc: false,
        close: function ()
        {
            return false;
        }
    });
}

function unTips(event, xhr, settings)
{
        if (settings._ajaxartDialog != null)
        {
            settings._ajaxartDialog.config.close = function () { return true };
            settings._ajaxartDialog.time(1);
        }
}
/****************全局遮罩End******************/

/****************显示错误信息******************/
$.inputYes = function (id)
{
    $("#" + id).removeClass("inputError");
    $("#" + id).addClass("inputYes");
    if (art.dialog.list['error_' + id] != null)
    {
        art.dialog.list['error_' + id].close();
    }
    $("#" + id).css("border", "1px solid #2E7BCC");
}

$.inputError = function (id, txt)
{
    if (art.dialog.list['error_' + id] == null)
    {
        $.tipsError(txt, id).time(8);
    }

    $("#" + id).removeClass("inputYes");
    $("#" + id).addClass("inputError");
    $("#" + id).css("border", "1px solid red");

}
/****************显示错误信息End******************/


//绑定所有IsPurview的a标签，用于判断该标签是否有权限访问，IsPurview='/home/home/index'
//pwUrl表示请求验证的路径
function PurviewBind(pwUrl)
{

    $("[IsPurview]").each(function (index, domEle)
    {
        var pw = $(this).attr("IsPurview").split('/');
        $(this).bind("click", function ()
        {
            var b = false;

            $.AjaxServer(pwUrl, { action: pw[3], controller: pw[2], area: pw[1] }, function (obj)
            {
                if (obj.Status == 1)
                {
                    b = true;
                } else
                {
                    $.tips(obj.ErrorText);
                }
            }, false);

            return b;
        });
    });

}